Teaching an Old Dog New Tricks


Forty years ago last summer I learned how to program computers. I was thirty then, and bought a cheap computer, a TS-1000. It was monochrome, text only with a dozen blocks that do very primitive graphics, 1 mHz clock speed, with 2 kilobytes of memory. A very small, primitive computer.
I bought it because I hated my job pumping gas at Disney World, despite its numerous perks, and had read that a teenager had become a millionaire writing computer programs. A teenager? I could do that! Hell, I was hacking electronics as a teenager, making a guitar fuzzbox, like was sold for $300 in music stores, out of a broken $10 transistor radio!
The computer came with a tutorial on how to program it in Sinclair BASIC. It took a few weeks of spare time to learn well enough that I could write an analog clock display, albeit not a very accurate clock, and simple 2-D video games, building up in complexity.
The most ambitious game I wrote at that time was a two player battle tanks game, similar to what Windows would have decades later. The only trouble was, the slow clock speed of the machine, with the added overhead of its BASIC interpreter made it unplayably slow.
So I learned Z-80 assembly, re-wrote it based on the BASIC version I had written; BASIC is incredibly similar to assembly, and I had to assemble it by hand because that computer had no assembler I knew of. Then I had to add timing loops to slow it down.
A couple of years later, I discovered that the teenager was Bill Gates, his parents were rich lawyers who worked for IBM, and he became a millionaire making an operating system he had bought to work on an IBM-PC, then licensed that OS to IBM. And I bought another computer with my meager Disney wages, a Radio Shack TRS-80 MC-10. This was color, but text-only as well.
I bought its repair manual because I’ve always wanted to know as much as I could about stuff I owned, and discovered that although it was text-only, its video chip was capable of graphics. It was fun finding its address and what value to POKE there to make it do things; trial and error, short routines, etc. I had hacked its hardware with software.
I wrote a graphics program for it called HRG, bought a classified ad in Byte Magazine, and sold enough copies for $20 each to pay for the ad, but not for the blank cassettes or postage.
Learning was always easy as a young man, as long as I worked my ass off on it.
But half a decade later during a bad recession I got a job with the state of Illinois on the basis of my knowing about computers; they were still new in offices, and most people had never seen one. Of course, the state had mainframes for decades, but “microcomputers” were still new.
I started out entering data, and wound up writing the databases in dBase, later taking a college course in NOMAD. I still have the textbook in my basement, I think. The two languages are similar enough that I suspect that dBase was originally written as NOMAD on a PC.
Four decades after haunting the library and devouring dozens of books learning assembly, and almost a decade after retiring, I find the books I’ve written are listed on Goodreads and sign up for an author account.
It requires RSS for a linked blog. I’ve never used RSS on either end, and as of when I created the Goodreads account yesterday knew nothing of it whatever, except that a thing called “RSS” existed. I searched for information all afternoon yesterday and wound up where I should have started, W3C Schools.
I’m seventy now, but I’ll bet I have that RSS feed up and running faster than I had that machine code tanks program running when I was young!
Update: Two hours. Who says you can’t teach am old dog new tricks? Of course, XML ain’t hand assembled machine code...
 


Last year's postings
 


Share on Facebook

You can read or download my books for free here. No ads, no login, just free books.